home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Format CD 52
/
Amiga Format AFCD52 (Issue 136, May 2000).iso
/
-serious-
/
programming
/
c
/
roboticsdp
/
docs
/
mini ssc ii
/
ssc_faq
< prev
next >
Wrap
Text File
|
2000-02-28
|
9KB
|
189 lines
Frequently Asked Questions (FAQ) on Mini SSC II
1. What is a servo?
2. What are the Mini SSCs?
3. What range of positioning can I get with a Mini SSC and servo?
4. Is the Mini SSC II available in kit form?
5. Where can I get suitable servos for use with the Mini SSCs?
6. Where can I get an AC power supply for servos?
7. How do I send an instruction to a Mini SSC?
8. Where can I find program examples?
9. Can I move two or more servos simultaneously?
10. How do I make servos move slowly and smoothly?
11. What if I want to control more than eight servos?
12. What about even more servos?
13. How do I reduce electrical noise that's making my servos twitch?
14. How do I control the Mini SSC with a TicKit controller?
15. How do I control the Mini SSC with a 68HC11 Handy Board?
16. I don't want to write programs; do you have ready-to-go software for
the Mini SSC?
1. What is a servo?
"Servo" in this case refers to R/C or 'hobby' servos used in
radio-controlled cars, boats and planes. These are small, self-contained
positioners consisting of a motor, geartrain, and control electronics. As
inputs, these servos need a source of power (4.8 to 6Vdc) and a control
signal (variable-width pulses repeating at a 60-Hz rate). Servos'
mechanical output is a shaft, disk, or lever whose angle is proportional
to--controlled by--the width of the pulses at the input.
2. What are the Mini SSCs?
Mini SSCs are electronic interfaces that allow a computer to control eight
servos. The computer sends simple commands to the Mini SSC at 2400 or 9600
baud, and Mini SSC generates eight channels of precise, stable
servo-control pulses.
3. What range of positioning can I get with a Mini SSC and servo?
Servos are primarily designed to drive bellcrank mechanisms, like those
that control the angle of control surfaces in a plane, or steering in a
car. These mechanisms have a limited range of motion, so a servo's basic
design calls for operation over a 90-degree range. The Mini SSCs' control
signals break this 90-degree range into 254 parts, for 0.36-degree
resolution. Optionally, the Mini SSC II can be configured for coarser
resolution (0.72 degrees) and wider range (up to 180 degrees). However,
not all servos can cover a full 180 degrees because of their basic design.
4. Is the Mini SSC II available in kit form?
No. It's a surface-mount design, making it more difficult to hand
assemble. Even if that were not the case, surface-mount components are too
tiny to economically kit up for hand assembly, and a kit would probably
cost more than the assembled version (which is put together in the blink
of any eye by automated pick-and-place technology).
5. Where can I get suitable servos for use with the Mini SSCs?
Any hobby dealer can help. On line, check out www.towerhobbies.com or
www.lynxmotion.com or www.robotstore.com .
6. Where can I get an AC power supply for servos?
Servos are designed to operate from four-cell battery packs supplying 4.8
to 6.0 Vdc. Under load, they can draw pretty heavy current (100s of mA).
Being designed for battery power, they aren't very tolerant of
power-supply noise. An ideal power supply is a linear, regulated 5Vdc
supply capable of 1A or more output. Jameco carries quite a few suitable
supplies--mostly OEM surplus from video game consoles. Here are a couple
examples from their October '98 catalog:
Atari 5W supply, part number 116089: 5V at 1A
Atari 6.6W supply, part number 14767: 5V at 1.2A and 12V at 0.24A
You'll have to cut off the connectors on these supplies' outputs and
determine voltages and polarity with a meter, but you'll be getting a
husky, reliable power supply for around $10. The 12V output from the 6.6W
supply can be used to power the Mini SSC electronics, replacing the 9V
battery too.
7. How do I send an instruction to a Mini SSC?
Instructions have a simple format consisting of a sync byte (always ASCII
255), the servo number (0-254), and relative position (0-254, where 127 is
centered). Send the appropriate three bytes and the Mini SSC will send the
specified servo control pulses that make it move to the commanded
position. Servos are held in the last commanded position until instructed
otherwise.
8. Where can I find program examples?
In the Mini SSC manuals, in BASIC for the Stamp 1, Stamp 2, and PCs.
There's a great Windows programming tutorial for the Mini SSC (written in
Visual BASIC 5 Pro) published by Reynolds Electronics (off site at
www.rentron.com). We provide a free DLL for experienced Windows
programmers; see our app note. For Linux users, check out the Perl/Tk GUI
controller at www.howtoandroid.com.
9. Can I move two or more servos simultaneously?
Yes and no. Servo-control pulses repeat every 18 milliseconds or so.
During that time, you could send as many as 6 instructions to the Mini SSC
(at 9600 baud). It also takes servos a while to respond to new positioning
instructions--typically 300 milliseconds to carry out a 60-degree change
in position. So although you cannot send commands simultaneously, you can
send them quickly enough to amount to the same thing.
10. How do I make servos move slowly and smoothly?
By sending them a series of intermediate positions in connect-the-dots
fashion. If a servo is at position 50 and you send the command for
position 250, it will move as fast as possible to that new position. But
if you break the move up into a series of smaller moves and send them with
time in between, you can slow down and smooth out the move.
11. What if I want to control more than eight servos?
Two Mini SSCs can share the same serial line. The first Mini SSC would be
set up for its default servo numbering of 0 to 7; the second would have an
'ID' jumper installed, giving its servos numbers 8 through 15.
12. What about even more servos?
Mini SSCs can be chained together to control up to 255 servos. To get
servo numbers higher than 15, you must special-order the Mini SSC with the
appropriate firmware; contact Scott Edwards Electronics, Inc.
(info@seetron.com) for details.
13. How do I reduce electrical noise that's making my servos twitch?
The Mini SSC's output signals are rock steady, so a properly functioning
servo should be steady too. However, if the electrical environment is
exceptionally noisy (RF sources, relays, contactors, big motors, noisy
fluorescent lights), or your servo wiring is more than a few feet long,
the servos may pick up noise on their signal inputs and twitch or jitter.
Your hobby shop can supply a glitch-filter circuit that will help. A
customer-recommended model is the "Futaba P-AB0104 (Extension cord
W/filter B3P)."
14. How do I control the Mini SSC with a TicKit controller?
CANtronics, Canadian distributor for the Mini SSC II, carries VersaTech
TicKit controllers. They contributed the following code fragments to set
up serial output and send three bytes to the Mini SSC:
rs_param_set( rs_invert | rs_9600 | pin_d0 ) ; set up serial out on pin d0
; only needs done once
rs_send( 255b ) ; send the sync byte (255)
rs_send( 0b ) ; send a servo number (0)
rs_send( 200b ) ; send a position value (200)
15. How do I control the Mini SSC with a 68HC11 Handy Board?
The MIT-designed Handy Board is extremely popular in robotics
applications, so it makes sense that many of its users want to team it up
with the Mini SSC. The Handy Board Home page features a 9600-baud serial
driver that's supposed to be perfect for Mini SSC apps.
16. I don't want to write programs; do you have ready-to-go software for the
Mini SSC?
Third parties have developed fantastic Windows-based software for the Mini
SSCs:
Mister Computer offers a complete animatronics package with an
assembled Mini SSC II, servos, and software.
Roscoe Robotics' ServoMotion software supports joysticks, .WAV (audio)
files, and more.